testing conditions